TokenManager is used to interact with native asset as well as its wrapped version. A missing receive()function means that the contract cannot convert wrapped asset back to native asset as the contract cannot receive it.
Missing receive()function in TokenManger.sol bricks the withdrawfunction.
withdraw()cannot be called for when _tokenAddress == wrappedNativeToken
Manual Review
Consider adding receive()to the TokenManager contract.
Invalid, TokenManager is the implementation contract of 9the transparent upgradeable proxy, as can seen by the comments [here](https://github.com/Cyfrin/2024-08-tadle/blob/04fd8634701697184a3f3a5558b41c109866e5f8/src/proxy/UpgradeableProxy.sol#L15). The receive payable is implemented as seen [here](https://github.com/Cyfrin/2024-08-tadle/blob/04fd8634701697184a3f3a5558b41c109866e5f8/src/proxy/UpgradeableProxy.sol#L37)
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.