zBanc - DynamicLiquidTokenConverter ineffective reentrancy protection
`reduceWeight` calls `_protected()` in an attempt to protect from reentrant calls but this check is insufficient as it will only check for the `locked` statevar but never set it. A potential for direct reentrancy might be present when an erc-777 token is used as reserve.\\nIt is assumed that the developer actually wanted to use the `protected` modifier that sets the lock before continuing with the method.\\n```\\nfunction reduceWeight(IERC20Token \\_reserveToken)\\n    public\\n    validReserve(\\_reserveToken)\\n    ownerOnly\\n{\\n    \\_protected();\\n```\\n\\n```\\ncontract ReentrancyGuard {\\n    // true while protected code is being executed, false otherwise\\n    bool private locked = false;\\n\\n    /\\*\\*\\n \\* @dev ensures instantiation only by sub-contracts\\n \\*/\\n    constructor() internal {}\\n\\n    // protects a function against reentrancy attacks\\n    modifier protected() {\\n        \\_protected();\\n        locked = true;\\n        \\_;\\n        locked = false;\\n    }\\n\\n    // error message binary size optimization\\n    function \\_protected() internal view {\\n        require(!locked, "ERR\\_REENTRANCY");\\n    }\\n}\\n```\\n
To mitigate potential attack vectors from reentrant calls remove the call to `_protected()` and decorate the function with `protected` instead. This will properly set the lock before executing the function body rejecting reentrant calls.
```\\nfunction reduceWeight(IERC20Token \\_reserveToken)\\n    public\\n    validReserve(\\_reserveToken)\\n    ownerOnly\\n{\\n    \\_protected();\\n```\\n