```\nuint256 fee = \_value.mul(buyFeePct).div(PCT\_BASE);\nuint256 value = \_value.sub(fee);\n\n// collect fee and collateral\nif (fee > 0) {\n    \_transfer(\_buyer, beneficiary, \_collateral, fee);\n}\n\_transfer(\_buyer, address(reserve), \_collateral, value);\n```\n