MembershipERC1155 contract will not work with FoT tokens, if the listed ones (USDC, WETH, WBTC) introduce a fee.
Function breaks because it uses the amount argument to calculate totalProfit variable. This breaks because its not the amount that is transferred to the contract but a fraction of if - depending on the fee present on the currency (token) contract.
Contract breaks when fee-on-transfer tokens are used.
Manual review
Do not use currency/tokens that can have a fee.
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.