```\n    function claimCOMPAndTransfer(address[] calldata cTokens)\n        external\n        override\n        onlyManagerContract\n        nonReentrant\n        returns (uint256)\n    {\n        uint256 balanceBefore = COMP.balanceOf(address(this));\n        COMPTROLLER.claimComp(address(this), cTokens);\n        uint256 balanceAfter = COMP.balanceOf(address(this));\n\n        // NOTE: the onlyManagerContract modifier prevents a transfer to address(0) here\n        uint256 netBalance = balanceAfter.sub(balanceBefore);   //<-------@only transfer out `netBalance`\n        if (netBalance > 0) {\n            COMP.safeTransfer(msg.sender, netBalance);\n        }\n\n        // NOTE: TreasuryManager contract will emit a COMPHarvested event\n        return netBalance;\n```\n