Graduated launches trade here against real reserves. The routing is public; what you end up holding is not.
Public: the swap itself, your address, the COTI amount.
Selling needs two signatures: an approval, then the swap. That is the ERC-20 dance, not something DEVOXPAD adds.
Every launch that filled its curve seeded a pair here with its entire reserve.
Uniswap V2 works out what it holds by calling balanceOf(address(this)). A COTI PrivateERC20 answers that with a ctUint256 ciphertext handle, not a number - so a stock pair would compute nonsense reserves and be drained on the first trade.
A DevoxSwap pair never reads a balance. It pulls tokens itself with transferFrom and credits its own reserves, so the amount is known because the pair moved it. Everything else is V2: x·y=k, 0.3% to LPs, and a minimum liquidity burned forever so the pool can never be emptied.
Honest trade-off: a swap is public by construction. Privacy protects what you hold, not the act of trading it in a public pool.