Stale inflationMultiplier in L1ECOBridge
`L1ECOBridge::inflationMultiplier` is updated through `L1ECOBridge::rebase` on Ethereum, and it is used in `_initiateERC20Deposit` and `finalizeERC20Withdrawal` to convert between token amount and `_gonsAmount`. However, if `rebase` is not called in a timely manner, the `inflationMultiplier` value can be stale and inconsistent with the value of L1 ECO token during transfer, leading to incorrect token amounts in deposit and withdraw.\\nThe `inflationMultiplier` value is updated in `rebase` with an independent transaction on L1 as shown below:\\n```\\n    function rebase(uint32 _l2Gas) external {\\n        inflationMultiplier = IECO(l1Eco).getPastLinearInflation(block.number);\\n```\\n\\nHowever, in both `_initiateERC20Deposit`, `transferFrom` is called before the `inflationMultiplier` is used, which can lead to inconsistent results if `rebase` is not called on time for the `inflationMultiplier` to be updated. The code snippet for `_initiateERC20Deposit` is as follows:\\n```\\n        IECO(_l1Token).transferFrom(_from, address(this), _amount);\\n        _amount = _amount * inflationMultiplier;\\n```\\n\\n`finalizeERC20Withdrawal` has the same problem.\\n```\\n        uint256 _amount = _gonsAmount / inflationMultiplier;\\n        bytes memory _ecoTransferMessage = abi.encodeWithSelector(IERC20.transfer.selector,_to,_amount);\\n```\\n\\nThe same problem does not exist in L2ECOBridge. Because the L2 rebase function updates inflationMultiplier and rebase l2Eco token synchronously.\\n```\\n    function rebase(uint256 _inflationMultiplier)\\n        external\\n        virtual\\n        onlyFromCrossDomainAccount(l1TokenBridge)\\n        validRebaseMultiplier(_inflationMultiplier)\\n    {\\n        inflationMultiplier = _inflationMultiplier;\\n        l2Eco.rebase(_inflationMultiplier);\\n        emit RebaseInitiated(_inflationMultiplier);\\n    }\\n```\\n
Calling `IECO(l1Eco).getPastLinearInflation(block.number)` instead of using `inflationMultiplier`.
The attacker can steal tokens with this.\\nHe can deposit to L1 bridge when he observes a stale larger value and he will receive more tokens on L2.
```\\n    function rebase(uint32 _l2Gas) external {\\n        inflationMultiplier = IECO(l1Eco).getPastLinearInflation(block.number);\\n```\\n